永久開機時,GOPATH就是自己的設定
vim ~/.bashrc
修改
export GOPATH=$HOME/.go => export GOPATH={指定的資料夾路徑}
1
package main
import (
"fmt"
)
var 我是字串 string
var 我是數字 int
func main() {
我是字串 = "Hey"
我是數字 = 99
fmt.Println(我是字串)
fmt.Println(我是數字)
fmt.Println("Complete")
}
2
package main
import (
"fmt"
)
var (
我是字串 string
我是數字 int
)
func main() {
我是字串 = "Hey"
我是數字 = 99
fmt.Println(我是字串)
fmt.Println(我是數字)
fmt.Println("Complete")
}
3
package main
import (
"fmt"
)
var (
我是字串 string = "Hey"
我是數字 int = 99
)
func main() {
fmt.Println(我是字串)
fmt.Println(我是數字)
fmt.Println("Complete")
}
4
in local useful(要在function內命名)
package main
import (
"fmt"
)
func main() {
我是字串 := "Hey"
我是數字 := 99
fmt.Println(我是字串)
fmt.Println(我是數字)
fmt.Println("Complete")
}
var 我是字串 string
我是字串 = "Hey"
5.常數
package main
import (
"fmt"
)
const (
firstDay = 1
secondDay = 2
thirdDay = 3
)
func main() {
fmt.Println(firstDay)
fmt.Println(secondDay)
fmt.Println(thirdDay)
fmt.Println("Complete")
}
使用iota(預設為0)
package main
import (
"fmt"
)
const (
firstDay = iota + 1
secondDay
thirdDay
)
func main() {
fmt.Println(firstDay)
fmt.Println(secondDay)
fmt.Println(thirdDay)
fmt.Println("Complete")
}
盡可能不要寫 global variable
原因是你不知道在哪個 func 內會修改過他,未來專案一大比較難 debug,另外一點是不管是不是在 func 內,在 for 迴圈,或者是在 if 內都算是 local variable,離開迴圈或 if 之後,該 variable 就會被釋放了。
參考
如果在 if block 內的變數只會在 if 內用到,這時候你就需要在 if 內使用 i := 2 ,如果不是的話,像是計算金額,可能會需要跨很多 if 或 func 這時候就需要外層的 var 宣告,就是根據你的情境使用變數。
當你在 if 內使用 := 宣告變數,就不會影響到外面的變數,即使變數名稱都一樣也沒問題